package com.biz.primus.ms.oms.service.returns;

import com.biz.primus.base.vo.PageResult;
import com.biz.primus.common.vo.SpringPageVO;
import com.biz.primus.model.oms.vo.OmsOrderReturnVo;
import com.biz.primus.model.oms.vo.OmsRefundDetailVo;
import com.biz.primus.model.oms.vo.OrderRefundQueryVo;
import com.biz.primus.model.oms.vo.OrderReturnQueryVo;
import com.biz.primus.model.oms.vo.returns.OmsRefundVo;
import com.biz.primus.model.oms.vo.returns.OmsReturnVo;

/**
 *
 * 退单查询
 * @author yanweijin
 * @date 2017/10/18
 */
public interface OrderReturnQueryService {


    /**
     * 线上退单列表查询
     * @param query
     * @return
     */
    PageResult<OmsOrderReturnVo> findReturns(OrderReturnQueryVo query);

    /**
     * 线上退单详情查询
     * @param depotCode
     * @param returnCode
     * @return
     */
    OmsOrderReturnVo orderReturnQueryDetail(String depotCode,String returnCode);

    /**
     * 后台管理退款列表查询
     * @param orderQueryVo
     * @return
     */
    PageResult<OmsRefundVo> managementRefundQueryList(OrderRefundQueryVo orderQueryVo);

    /**
     * 后台管理退单列表查询
     * @param orderQueryVo
     * @return
     */
    PageResult<OmsReturnVo> managementReturnQueryList(OrderReturnQueryVo orderQueryVo);


    /**
     * 根据退单编码查询审核的退单信息
     * @param returnCode
     * @return
     */
    OmsReturnVo auditReturnDetail(String returnCode);

    /**
     * 退款信息
     * @param refundCode
     * @return
     */
    OmsRefundDetailVo getRefundDetail(String refundCode);
}
